package com.pearadmin.modules.sys.service.impl;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.pearadmin.common.web.domain.request.PageDomain;
import com.pearadmin.modules.sys.domain.PoleInfo;
import com.pearadmin.modules.sys.mapper.PoleInfoMapper;
import com.pearadmin.modules.sys.service.IPoleInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 极号信息Service业务层处理
 *
 * @author Mr.Ling
 * @date 2021-11-27
 */
@Service
public class PoleInfoServiceImpl implements IPoleInfoService {
    @Autowired
    private PoleInfoMapper poleInfoMapper;

    /**
     * 查询极号信息
     *
     * @param id 极号信息ID
     * @return 极号信息
     */
    @Override
    public PoleInfo selectPoleInfoById(String id) {
        return poleInfoMapper.selectPoleInfoById(id);
    }

    /**
     * 查询极号信息列表
     *
     * @param poleInfo 极号信息
     * @return 极号信息
     */
    @Override
    public List<PoleInfo> selectPoleInfoList(PoleInfo poleInfo) {
        return poleInfoMapper.selectPoleInfoList(poleInfo);
    }

    /**
     * 查询极号信息
     * @param poleInfo 极号信息
     * @param pageDomain
     * @return 极号信息 分页集合
     * */
    @Override
    public PageInfo<PoleInfo> selectPoleInfoPage(PoleInfo poleInfo, PageDomain pageDomain) {
        PageHelper.startPage(pageDomain.getPage(), pageDomain.getLimit());
        List<PoleInfo> data = poleInfoMapper.selectPoleInfoList(poleInfo);
        return new PageInfo<>(data);
    }

    /**
     * 新增极号信息
     *
     * @param poleInfo 极号信息
     * @return 结果
     */

    @Override
    public int insertPoleInfo(PoleInfo poleInfo) {
        return poleInfoMapper.insertPoleInfo(poleInfo);
    }

    /**
     * 修改极号信息
     *
     * @param poleInfo 极号信息
     * @return 结果
     */
    @Override
    public int updatePoleInfo(PoleInfo poleInfo) {
        return poleInfoMapper.updatePoleInfo(poleInfo);
    }

    /**
     * 删除极号信息对象
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    @Override
    public int deletePoleInfoByIds(String[] ids) {
        return poleInfoMapper.deletePoleInfoByIds(ids);
    }

    /**
     * 删除极号信息信息
     *
     * @param id 极号信息ID
     * @return 结果
     */
    @Override
    public int deletePoleInfoById(String id) {
        return poleInfoMapper.deletePoleInfoById(id);
    }

    @Override
    public List<PoleInfo> selectBySlotId(String slotId) {
        return poleInfoMapper.selectBySlotId(slotId);
    }
}
